package com.tianyu.inspection.common.enums;

import java.util.Arrays;

/**********************************
 * @Author YSW
 * @Description 飞行状态枚举类型
 * @Date 2021/1/7 - 11:55
 **********************************/

public enum FileTypeEnum {

    //文件存储类型
    FILE_OTHER("其他", 1),
    FILE_WIN_PROD_EXE("客户端线上安装文件", 2),
    FILE_PIPELINE_PB("管线PB", 3),
    FILE_TELEMETRY_PB("遥测PB", 4),
    FILE_DANGER_IMG("险情图片", 5),
    FILE_DANGER_PROCESS_IMG("险情处理图片", 6),
    FILE_PILE_CARD_IMG("桩牌图片", 7),
    FILE_VALUE_CHEST_IMG("阀室图片", 8),
    FILE_CONSTRUCTION_UNITS_IMG("施工作业区图片", 9),
    FILE_USER_IMG("用户头像图片", 10),
    FILE_CLIENT_IMG("客户端LOGO图片", 11),
    FILE_WIN_TEST_EXE("客户端测试安装文件", 12),
    FILE_ANDROID_PROD_APP("安卓APP线上安装文件", 13),
    FILE_ANDROID_TEST_APP("安卓APP测试安装文件", 14),
    FILE_MESSAGE_TYPE_ICON("基础设施类型图标", 15),
    FILE_TWO_DIMENSIONAL_MODEL("二维模型", 16),
    FILE_THREE_DIMENSIONAL_MODEL("三维模型", 17),
    UNKNOWN("暂无类型,用于标记最后类型号", 18);

    private int value;
    private String message;

    FileTypeEnum(String message, int value) {
        this.message = message;
        this.value = value;
    }

    public int getValue() {
        return value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public void setValue(int value) {
        this.value = value;
    }

    public static FileTypeEnum find(Integer value) {
        if (value == null) {
            return UNKNOWN;
        }
        return Arrays.stream(FileTypeEnum.values())
                .filter(methodEnum -> methodEnum.value == value)
                .findAny()
                .orElse(UNKNOWN);
    }
}
